package com.ibeeking.found.cop.b.rest.service;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ibeeking.found.cop.service.common.dos.GroupFriendsDO;
import com.ibeeking.found.cop.service.common.param.GroupFriendsParam;
import com.ibeeking.found.cop.service.common.query.GroupFriendsPageQuery;
import com.ibeeking.found.cop.service.common.query.GroupFriendsQuery;
import com.ibeeking.found.cop.service.common.vo.GroupFriendsVO;

import java.util.List;
import java.util.Map;

public interface IGroupFriendsService {

    /***
     * 查询列表
     */
    List<GroupFriendsVO> list(GroupFriendsQuery query);

    /***
     * 查询列表
     */
    List<GroupFriendsVO> listByGroupId(Long groupId);

    /***
     * 分页查询
     */
    Page<GroupFriendsVO> pageList(GroupFriendsPageQuery pageQuery);

    /***
     * 新增
     */
    Boolean add(GroupFriendsParam param);

    /***
     * 修改
     */
    Boolean modify(GroupFriendsParam param);

    /***
     * 通过id查询
     */
    GroupFriendsVO view(Long id);


    /***
     * 修改状态
     */
    Boolean changeStatus(Long id, Integer status);

    /***
     * 通过id删除
     */
    Boolean del(Long id);
    /***
     * 批量处理
     */
    Integer saveOrUpdateOrDeleteBatchGroupFriends(Long tenantId, Map<Long, List<GroupFriendsDO>> groupFriendsDOMap, List<String> allFriendCodes);
}
